Objects are the most important features of JavaScript, and most of JavaScript is all about objects and their usages. In this JavaScript tutorial, we will learn the basics of JS objects and how can we use them.
What are objects in JavaScript?
Objects are the variables or built-in data structures in JavaScript that are used to hold multiple values. As the name suggests objects are generally used to implement real-world objects using variables. For example, if you want to define a man using a variable then you can use the object variable that will store all the characteristics and functions for the man. Example
let man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", }
defining objects
In the above example, you can see that we can define or declare an Object variable like a normal variable. We can either use the var, let, or const keyword to declare an object variable. syntax
declaration_keyword object_name = { name1:value1, name2:value2, name3:value3 };
The object can store multiple values in the form of
name:value
pairs separated with a comma, inside curly brackets
{}
. The
name
can be a variable name and the
value
can either be a data value or a function expression.
Example
let student = { fname: "Ravi", lname:"Singh", age:14, class:7}
In the above example, we declared an object by the name
student
, and it contains 4
name:value
pairs. Every name in the student object has a value associated with it, for example
fname
name has a value of
"Ravi", age
has a value of
14
and so on. Inside the object to assign a value to a name we use the colon
(:)
symbol, and to separate the
name:value
pairs use the comma
,
.
Object Properties
All the
name:value
defined inside the object curly brackets are known as object properties which means they are the property of an object. From the
name:value
pairs of the object, the name can be treated as the property name and the value can be treated as the property value. Property is a technical term used to refer to Object
name:value
pairs.
Example
let man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", }
In the above example
Property Name | Property Value |
---|---|
name | Rahul |
age | 20 |
gender | Male |
height | 6(ft) |
Accessing object properties
We can access the specific property and value from an object, and there are two ways to do that. using . operator
object_name.property_name
OR, using brackets
object_name["property_name"]
Example
<script> let man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", } // using . dot operator console.log(man.name); // "Rahul" // using square bracket console.log(man["name"]); //Rahul </script>
Object methods By far we have been only using the data object as a value for the property values, but we can also use the function expression as a property value. And if a property value is a function then it is called the object method. methods are nothing but the function defined inside an object. Syntax
<script> var man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", is_adult: function(){ if (this.age>=18) { return true } else{ return false } } } </script>
In the above example,
is_adult
property is the method of
man
object, becaue it is a function, which returns true if the man
age
is greater than or equal to 18, or else it returns false. In the function expression, you can also see that there I have used
this.age
instead of
age
. We will be discussing
this
keywords in further in the next section. Just to break the above code, we use
this
keyword to access the property value within the object.
Accessing object methods
To access the method we use the dot operator on the object and call the method like a normal function calling. Syntax
object_name.method_name()
Example
<script> var man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", is_adult: function(){ if (this.age>=18) { return true } else{ return false } } } document.write(man.is_adult()); // true </script>
Output
true
JavaScript
this
keyword
this
is the very important keyword of an object. It refers to the main object of the function or method. When we define a method inside an object, and we wish to access the object's other properties values inside the method, then we need to call those properties using
this
keyword. We can not directly access the defined values inside the function or with any other property. We have to use
this
keyword to access the defined property and its value else we receive an error.
Example
<script> var man = { name : "Rahul", age : 20, gender : "Male", height : "6(ft)", is_adult: function(){ if (this.age>=18) { return true } else{ return false } } } document.write(man.is_adult()); // true </script>
Behind the code
In the above example inside he
is_adult
method we have used the
this.age
statement to access the
age:20
property of the object
man
. the
this
keyword tell the function/method that we are trying to access the property of this object itself where the function is declared.
Summary
- An object is a data structure that can store multiple values.
-
The object store values in the form of
name:value
pairs. -
The
name
can be a variable name andvalue
can be a data value or function expression. -
The
name:value
pairs of the object are known as object properties. - The function defined inside the object is known as object methods.
-
this
keyword is used to access the defined property of the object within the object.